The present invention is related to multicast connections. More specifically, the present invention is related to multicast connections which have no overlapping branches.
Multicast (point-to-multipoint or multipoint-to-point) connections in an ATM network do not necessarily have to form perfect tree graphs to work properly. Branches of a given Be multicast connection can overlap and form xe2x80x9cloopsxe2x80x9d without affecting the correctness of the data flow. Overlapping branches, however, may cause gross inefficiency. A given node on the connection may receive multiple copies of the same data cells unnecessarily, thus wasting bandwidth and processing capacity.
Some multicast connections (e.g., LAN emulation connections) have long holding times. Inefficiency caused by branch overlapping can degrade the overall throughput of the network significantly over a long period of time.
The present invention provides a mechanism for storing and maintaining at the root node of a given multicast connection all the information about the connection necessary to ensure that the connection does not have overlapping branches as parties are added to and deleted from the connection. The stored information is used in conjunction with a path selection algorithm.
The present invention pertains to a system for multicasting. The system comprises a network comprising nodes and links connecting the nodes. The system comprises a mechanism for forming a multicast connection which does not have overlapping branches.
The present invention pertains to a node in an ATM network. The node comprises a forming mechanism for forming multicast connections in the network which do not have overlapping branches as parties are added or deleted from the connections. The node comprises a port mechanism which connects to the network through which the connections are sent to the network. The forming mechanism is connected to the port mechanism.
The present invention pertains to a method for forming multicast connections. The method comprises the steps of forming a first connection between a first node and a second node. Then there is the step of forming a second multicast connection between the first node and a third node by extending the first connection.